package com.qen.encrypt.properties;

import cn.hutool.crypto.Mode;
import cn.hutool.crypto.Padding;
import lombok.Getter;

/**
 * 加密、签名，枚举
 * @author licz
 * @data 2025年05月27日 2:39 PM
 */
@Getter
public enum AlgorithmEnum {

    AES_ECB(Mode.ECB, Padding.PKCS5Padding),
    AES_CBC(Mode.CBC, Padding.PKCS5Padding),
    SM2(Mode.NONE, Padding.NoPadding),
    RSA(Mode.NONE, Padding.NoPadding),
    SM4_CTR(Mode.CTR, Padding.PKCS5Padding),
    SM4_ECB(Mode.ECB, Padding.PKCS5Padding);

    private Mode mode;
    private Padding padding;

    AlgorithmEnum(Mode mode, Padding padding) {
        this.mode = mode;
        this.padding = padding;
    }

}
